package jpa.many_one;

import java.util.List;

import javax.persistence.EntityManager;
import javax.persistence.EntityTransaction;

import jpa.util.JpaUtil;

/**
 * @Description：
 * @author：涂有
 * @date 2015年11月24日 下午9:10:39
 */
public class Test {

	/**
	 * @Description：
	 * @param args
	 */
	public static void main(String[] args) {

		EntityManager manager = JpaUtil.getEntityManager();
		EntityTransaction tran = manager.getTransaction();
		tran.begin();
		try {
			
			
			/***************新增*****************/
			Address add = new Address();
			add.setDetail("地址详细信息");
			
			Student p = new Student();
			p.setAddress(add);
			p.setName("涂有");
			p.setAge(32);
//			manager.persist(p); //Address没有保存，报错
			manager.persist(add);
			
//			manager.persist(add);
//			manager.persist(p);
			
			/***************查询*****************/
//			Student stu = manager.find(Student.class, 2);
//			
//			Address add = stu.getAddress();
//			System.out.println(add.getDetail());
//			
//			List<Student> stu2 = add.getStudents();
//			System.out.println(stu2.size());
			
			/***************删除*****************/
//			Address add = manager.find(Address.class, 2);
//			manager.remove(add);
			
			/***************更新*****************/
//			Address add = manager.find(Address.class, 2);
//			add.setId(1);
//			manager.merge(add);
			
			tran.commit();
		} catch (Exception e) {
			e.printStackTrace();
			tran.rollback();
		}
	}

}
